﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace KATAJAVI_SIA
{
    public partial class EditarClientes : Form
    {
        KATAJAVI call = new KATAJAVI();
        DataClassesDataContext BEDE = new DataClassesDataContext();
        IEnumerable<CLIENTE> lista;
        IEnumerable<MOTO> lista1;

        int valnombre1, valnombre2, valnombre3, valfono, valdireccion1, valdireccion2, valdireccion3;

        private GroupBox groupBox1;
        private Button btn_BuscarCliente;
        private TextBox tbx_BusquedaDato;
        private DataGridView dgv_ClientesLista;
        private Label label12;
        private TextBox tbx_ClienteDireccion2;
        private TextBox tbx_ClienteNombre3;
        private TextBox tbx_ClienteNombre2;
        private Label label11;
        private Label label10;
        private Label label9;
        private Label label7;
        private Label label6;
        private TextBox tbx_ClienteDireccion1;
        private TextBox tbx_ClienteFonoNumero;
        private Label label5;
        private Label label4;
        private Button btn_GuardarCambios;
        private Button btn_CargarRegistro;
        private Button btn_EliminarRegistro;
        private Button btn_NoHacerCambios;
        private TextBox tbx_ClienteNombre1;
        private TextBox tbx_ClienteRut;
        private Label label2;
        private Label label13;
        private TextBox tbx_ClienteDireccion3;
        private DataGridViewTextBoxColumn rut_cliente;
        private DataGridViewTextBoxColumn nombre;
        private DataGridViewTextBoxColumn fono;
        private ErrorProvider errorProvider1;
        private IContainer components;
        private Label label1;
    
        public EditarClientes()
        {
            InitializeComponent();
        }

        private void InitializeComponent()
        {
            this.components = new System.ComponentModel.Container();
            System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(EditarClientes));
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle1 = new System.Windows.Forms.DataGridViewCellStyle();
            System.Windows.Forms.DataGridViewCellStyle dataGridViewCellStyle2 = new System.Windows.Forms.DataGridViewCellStyle();
            this.groupBox1 = new System.Windows.Forms.GroupBox();
            this.btn_BuscarCliente = new System.Windows.Forms.Button();
            this.tbx_BusquedaDato = new System.Windows.Forms.TextBox();
            this.dgv_ClientesLista = new System.Windows.Forms.DataGridView();
            this.rut_cliente = new System.Windows.Forms.DataGridViewTextBoxColumn();
            this.nombre = new System.Windows.Forms.DataGridViewTextBoxColumn();
            this.fono = new System.Windows.Forms.DataGridViewTextBoxColumn();
            this.label1 = new System.Windows.Forms.Label();
            this.label12 = new System.Windows.Forms.Label();
            this.tbx_ClienteDireccion2 = new System.Windows.Forms.TextBox();
            this.tbx_ClienteNombre3 = new System.Windows.Forms.TextBox();
            this.tbx_ClienteNombre2 = new System.Windows.Forms.TextBox();
            this.label11 = new System.Windows.Forms.Label();
            this.label10 = new System.Windows.Forms.Label();
            this.label9 = new System.Windows.Forms.Label();
            this.label7 = new System.Windows.Forms.Label();
            this.label6 = new System.Windows.Forms.Label();
            this.tbx_ClienteDireccion1 = new System.Windows.Forms.TextBox();
            this.tbx_ClienteFonoNumero = new System.Windows.Forms.TextBox();
            this.label5 = new System.Windows.Forms.Label();
            this.label4 = new System.Windows.Forms.Label();
            this.btn_CargarRegistro = new System.Windows.Forms.Button();
            this.btn_GuardarCambios = new System.Windows.Forms.Button();
            this.btn_EliminarRegistro = new System.Windows.Forms.Button();
            this.btn_NoHacerCambios = new System.Windows.Forms.Button();
            this.label13 = new System.Windows.Forms.Label();
            this.tbx_ClienteNombre1 = new System.Windows.Forms.TextBox();
            this.tbx_ClienteRut = new System.Windows.Forms.TextBox();
            this.label2 = new System.Windows.Forms.Label();
            this.tbx_ClienteDireccion3 = new System.Windows.Forms.TextBox();
            this.errorProvider1 = new System.Windows.Forms.ErrorProvider(this.components);
            this.groupBox1.SuspendLayout();
            ((System.ComponentModel.ISupportInitialize)(this.dgv_ClientesLista)).BeginInit();
            ((System.ComponentModel.ISupportInitialize)(this.errorProvider1)).BeginInit();
            this.SuspendLayout();
            // 
            // groupBox1
            // 
            this.groupBox1.Controls.Add(this.btn_BuscarCliente);
            this.groupBox1.Controls.Add(this.tbx_BusquedaDato);
            this.groupBox1.Font = new System.Drawing.Font("Calibri", 9F, System.Drawing.FontStyle.Bold);
            this.groupBox1.Location = new System.Drawing.Point(16, 31);
            this.groupBox1.Name = "groupBox1";
            this.groupBox1.Size = new System.Drawing.Size(422, 57);
            this.groupBox1.TabIndex = 7;
            this.groupBox1.TabStop = false;
            this.groupBox1.Text = "BUSCAR CLIENTE";
            // 
            // btn_BuscarCliente
            // 
            this.btn_BuscarCliente.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F);
            this.btn_BuscarCliente.Image = ((System.Drawing.Image)(resources.GetObject("btn_BuscarCliente.Image")));
            this.btn_BuscarCliente.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
            this.btn_BuscarCliente.Location = new System.Drawing.Point(288, 21);
            this.btn_BuscarCliente.Name = "btn_BuscarCliente";
            this.btn_BuscarCliente.Padding = new System.Windows.Forms.Padding(0, 0, 10, 0);
            this.btn_BuscarCliente.Size = new System.Drawing.Size(116, 26);
            this.btn_BuscarCliente.TabIndex = 11;
            this.btn_BuscarCliente.Text = "Buscar Cliente";
            this.btn_BuscarCliente.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
            this.btn_BuscarCliente.UseVisualStyleBackColor = true;
            this.btn_BuscarCliente.Click += new System.EventHandler(this.btn_BuscarCliente_Click);
            // 
            // tbx_BusquedaDato
            // 
            this.tbx_BusquedaDato.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
            this.tbx_BusquedaDato.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.tbx_BusquedaDato.Location = new System.Drawing.Point(18, 21);
            this.tbx_BusquedaDato.MaxLength = 45;
            this.tbx_BusquedaDato.Name = "tbx_BusquedaDato";
            this.tbx_BusquedaDato.Size = new System.Drawing.Size(238, 26);
            this.tbx_BusquedaDato.TabIndex = 10;
            this.tbx_BusquedaDato.TextChanged += new System.EventHandler(this.tbx_RutBuscar_TextChanged);
            // 
            // dgv_ClientesLista
            // 
            this.dgv_ClientesLista.AllowUserToAddRows = false;
            this.dgv_ClientesLista.AllowUserToDeleteRows = false;
            this.dgv_ClientesLista.BorderStyle = System.Windows.Forms.BorderStyle.Fixed3D;
            this.dgv_ClientesLista.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
            this.dgv_ClientesLista.Columns.AddRange(new System.Windows.Forms.DataGridViewColumn[] {
            this.rut_cliente,
            this.nombre,
            this.fono});
            dataGridViewCellStyle1.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
            dataGridViewCellStyle1.BackColor = System.Drawing.SystemColors.Window;
            dataGridViewCellStyle1.Font = new System.Drawing.Font("Microsoft Sans Serif", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            dataGridViewCellStyle1.ForeColor = System.Drawing.SystemColors.ControlText;
            dataGridViewCellStyle1.SelectionBackColor = System.Drawing.Color.SteelBlue;
            dataGridViewCellStyle1.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
            dataGridViewCellStyle1.WrapMode = System.Windows.Forms.DataGridViewTriState.False;
            this.dgv_ClientesLista.DefaultCellStyle = dataGridViewCellStyle1;
            this.dgv_ClientesLista.Location = new System.Drawing.Point(16, 94);
            this.dgv_ClientesLista.MultiSelect = false;
            this.dgv_ClientesLista.Name = "dgv_ClientesLista";
            this.dgv_ClientesLista.ReadOnly = true;
            dataGridViewCellStyle2.Alignment = System.Windows.Forms.DataGridViewContentAlignment.MiddleLeft;
            dataGridViewCellStyle2.BackColor = System.Drawing.SystemColors.Control;
            dataGridViewCellStyle2.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            dataGridViewCellStyle2.ForeColor = System.Drawing.SystemColors.WindowText;
            dataGridViewCellStyle2.SelectionBackColor = System.Drawing.SystemColors.Highlight;
            dataGridViewCellStyle2.SelectionForeColor = System.Drawing.SystemColors.HighlightText;
            dataGridViewCellStyle2.WrapMode = System.Windows.Forms.DataGridViewTriState.True;
            this.dgv_ClientesLista.RowHeadersDefaultCellStyle = dataGridViewCellStyle2;
            this.dgv_ClientesLista.RowHeadersWidthSizeMode = System.Windows.Forms.DataGridViewRowHeadersWidthSizeMode.DisableResizing;
            this.dgv_ClientesLista.ScrollBars = System.Windows.Forms.ScrollBars.Vertical;
            this.dgv_ClientesLista.SelectionMode = System.Windows.Forms.DataGridViewSelectionMode.FullRowSelect;
            this.dgv_ClientesLista.Size = new System.Drawing.Size(422, 274);
            this.dgv_ClientesLista.TabIndex = 6;
            this.dgv_ClientesLista.CellContentClick += new System.Windows.Forms.DataGridViewCellEventHandler(this.dgv_Clientes_CellContentClick);
            // 
            // rut_cliente
            // 
            this.rut_cliente.HeaderText = "RUT";
            this.rut_cliente.Name = "rut_cliente";
            this.rut_cliente.ReadOnly = true;
            this.rut_cliente.Width = 75;
            // 
            // nombre
            // 
            this.nombre.HeaderText = "Nombre";
            this.nombre.Name = "nombre";
            this.nombre.ReadOnly = true;
            this.nombre.Width = 220;
            // 
            // fono
            // 
            this.fono.HeaderText = "Teléfono";
            this.fono.Name = "fono";
            this.fono.ReadOnly = true;
            this.fono.Width = 83;
            // 
            // label1
            // 
            this.label1.AutoSize = true;
            this.label1.Font = new System.Drawing.Font("Calibri", 12F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label1.Location = new System.Drawing.Point(12, 9);
            this.label1.Name = "label1";
            this.label1.Size = new System.Drawing.Size(123, 19);
            this.label1.TabIndex = 5;
            this.label1.Text = "EDITAR CLIENTES";
            // 
            // label12
            // 
            this.label12.AutoSize = true;
            this.label12.Font = new System.Drawing.Font("Calibri", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label12.ForeColor = System.Drawing.SystemColors.ControlDarkDark;
            this.label12.Location = new System.Drawing.Point(767, 311);
            this.label12.Name = "label12";
            this.label12.Size = new System.Drawing.Size(49, 13);
            this.label12.TabIndex = 44;
            this.label12.Text = "*Número";
            // 
            // tbx_ClienteDireccion2
            // 
            this.tbx_ClienteDireccion2.BackColor = System.Drawing.Color.White;
            this.tbx_ClienteDireccion2.CharacterCasing = System.Windows.Forms.CharacterCasing.Lower;
            this.tbx_ClienteDireccion2.Enabled = false;
            this.tbx_ClienteDireccion2.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.tbx_ClienteDireccion2.Location = new System.Drawing.Point(770, 284);
            this.tbx_ClienteDireccion2.MaxLength = 7;
            this.tbx_ClienteDireccion2.Name = "tbx_ClienteDireccion2";
            this.tbx_ClienteDireccion2.Size = new System.Drawing.Size(66, 26);
            this.tbx_ClienteDireccion2.TabIndex = 36;
            this.tbx_ClienteDireccion2.TextChanged += new System.EventHandler(this.tbx_ClienteDireccion2_TextChanged);
            this.tbx_ClienteDireccion2.Leave += new System.EventHandler(this.tbx_ClienteDireccion2_Leave);
            // 
            // tbx_ClienteNombre3
            // 
            this.tbx_ClienteNombre3.BackColor = System.Drawing.Color.White;
            this.tbx_ClienteNombre3.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
            this.tbx_ClienteNombre3.Enabled = false;
            this.tbx_ClienteNombre3.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.tbx_ClienteNombre3.Location = new System.Drawing.Point(530, 210);
            this.tbx_ClienteNombre3.MaxLength = 15;
            this.tbx_ClienteNombre3.Name = "tbx_ClienteNombre3";
            this.tbx_ClienteNombre3.Size = new System.Drawing.Size(306, 26);
            this.tbx_ClienteNombre3.TabIndex = 30;
            this.tbx_ClienteNombre3.Leave += new System.EventHandler(this.tbx_ClienteNombre3_Leave);
            // 
            // tbx_ClienteNombre2
            // 
            this.tbx_ClienteNombre2.BackColor = System.Drawing.Color.White;
            this.tbx_ClienteNombre2.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
            this.tbx_ClienteNombre2.Enabled = false;
            this.tbx_ClienteNombre2.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.tbx_ClienteNombre2.Location = new System.Drawing.Point(530, 169);
            this.tbx_ClienteNombre2.MaxLength = 15;
            this.tbx_ClienteNombre2.Name = "tbx_ClienteNombre2";
            this.tbx_ClienteNombre2.Size = new System.Drawing.Size(306, 26);
            this.tbx_ClienteNombre2.TabIndex = 28;
            this.tbx_ClienteNombre2.Leave += new System.EventHandler(this.tbx_ClienteNombre2_Leave);
            // 
            // label11
            // 
            this.label11.AutoSize = true;
            this.label11.Font = new System.Drawing.Font("Calibri", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label11.ForeColor = System.Drawing.SystemColors.ControlDarkDark;
            this.label11.Location = new System.Drawing.Point(527, 239);
            this.label11.Name = "label11";
            this.label11.Size = new System.Drawing.Size(94, 13);
            this.label11.TabIndex = 43;
            this.label11.Text = "* Apellido Materno";
            // 
            // label10
            // 
            this.label10.AutoSize = true;
            this.label10.Font = new System.Drawing.Font("Calibri", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label10.ForeColor = System.Drawing.SystemColors.ControlDarkDark;
            this.label10.Location = new System.Drawing.Point(527, 355);
            this.label10.Name = "label10";
            this.label10.Size = new System.Drawing.Size(53, 13);
            this.label10.TabIndex = 42;
            this.label10.Text = "* Comuna";
            // 
            // label9
            // 
            this.label9.AutoSize = true;
            this.label9.Font = new System.Drawing.Font("Calibri", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label9.ForeColor = System.Drawing.SystemColors.ControlDarkDark;
            this.label9.Location = new System.Drawing.Point(527, 197);
            this.label9.Name = "label9";
            this.label9.Size = new System.Drawing.Size(91, 13);
            this.label9.TabIndex = 41;
            this.label9.Text = "* Apellido Paterno";
            // 
            // label7
            // 
            this.label7.AutoSize = true;
            this.label7.Font = new System.Drawing.Font("Calibri", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label7.ForeColor = System.Drawing.SystemColors.ControlDarkDark;
            this.label7.Location = new System.Drawing.Point(527, 311);
            this.label7.Name = "label7";
            this.label7.Size = new System.Drawing.Size(37, 13);
            this.label7.TabIndex = 39;
            this.label7.Text = "* Calle";
            // 
            // label6
            // 
            this.label6.AutoSize = true;
            this.label6.Font = new System.Drawing.Font("Calibri", 8.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label6.ForeColor = System.Drawing.SystemColors.ControlDarkDark;
            this.label6.Location = new System.Drawing.Point(527, 155);
            this.label6.Name = "label6";
            this.label6.Size = new System.Drawing.Size(51, 13);
            this.label6.TabIndex = 38;
            this.label6.Text = "* Nombre";
            // 
            // tbx_ClienteDireccion1
            // 
            this.tbx_ClienteDireccion1.BackColor = System.Drawing.Color.White;
            this.tbx_ClienteDireccion1.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
            this.tbx_ClienteDireccion1.Enabled = false;
            this.tbx_ClienteDireccion1.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.tbx_ClienteDireccion1.Location = new System.Drawing.Point(530, 284);
            this.tbx_ClienteDireccion1.MaxLength = 150;
            this.tbx_ClienteDireccion1.Name = "tbx_ClienteDireccion1";
            this.tbx_ClienteDireccion1.Size = new System.Drawing.Size(207, 26);
            this.tbx_ClienteDireccion1.TabIndex = 35;
            this.tbx_ClienteDireccion1.Leave += new System.EventHandler(this.tbx_ClienteDireccion1_Leave);
            // 
            // tbx_ClienteFonoNumero
            // 
            this.tbx_ClienteFonoNumero.BackColor = System.Drawing.Color.White;
            this.tbx_ClienteFonoNumero.Enabled = false;
            this.tbx_ClienteFonoNumero.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.tbx_ClienteFonoNumero.Location = new System.Drawing.Point(530, 252);
            this.tbx_ClienteFonoNumero.MaxLength = 8;
            this.tbx_ClienteFonoNumero.Name = "tbx_ClienteFonoNumero";
            this.tbx_ClienteFonoNumero.Size = new System.Drawing.Size(306, 26);
            this.tbx_ClienteFonoNumero.TabIndex = 34;
            this.tbx_ClienteFonoNumero.TextChanged += new System.EventHandler(this.tbx_ClienteFonoNumero_TextChanged);
            this.tbx_ClienteFonoNumero.Leave += new System.EventHandler(this.tbx_ClienteFonoNumero_Leave);
            // 
            // label5
            // 
            this.label5.AutoSize = true;
            this.label5.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label5.Location = new System.Drawing.Point(455, 287);
            this.label5.Name = "label5";
            this.label5.Size = new System.Drawing.Size(73, 18);
            this.label5.TabIndex = 31;
            this.label5.Text = "Direccion :";
            // 
            // label4
            // 
            this.label4.AutoSize = true;
            this.label4.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label4.Location = new System.Drawing.Point(480, 255);
            this.label4.Name = "label4";
            this.label4.Size = new System.Drawing.Size(46, 18);
            this.label4.TabIndex = 29;
            this.label4.Text = "Fono :";
            // 
            // btn_CargarRegistro
            // 
            this.btn_CargarRegistro.Image = global::KATAJAVI_SIA.Properties.Resources.arrow_right_double_2;
            this.btn_CargarRegistro.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
            this.btn_CargarRegistro.Location = new System.Drawing.Point(326, 374);
            this.btn_CargarRegistro.Name = "btn_CargarRegistro";
            this.btn_CargarRegistro.Size = new System.Drawing.Size(112, 33);
            this.btn_CargarRegistro.TabIndex = 47;
            this.btn_CargarRegistro.Text = "Cargar Registro";
            this.btn_CargarRegistro.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
            this.btn_CargarRegistro.UseVisualStyleBackColor = true;
            this.btn_CargarRegistro.Click += new System.EventHandler(this.btn_CargarRegistro_Click);
            // 
            // btn_GuardarCambios
            // 
            this.btn_GuardarCambios.Enabled = false;
            this.btn_GuardarCambios.Image = ((System.Drawing.Image)(resources.GetObject("btn_GuardarCambios.Image")));
            this.btn_GuardarCambios.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
            this.btn_GuardarCambios.Location = new System.Drawing.Point(716, 374);
            this.btn_GuardarCambios.Name = "btn_GuardarCambios";
            this.btn_GuardarCambios.Size = new System.Drawing.Size(120, 33);
            this.btn_GuardarCambios.TabIndex = 45;
            this.btn_GuardarCambios.Text = "Guardar Cambios";
            this.btn_GuardarCambios.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
            this.btn_GuardarCambios.UseVisualStyleBackColor = true;
            this.btn_GuardarCambios.Click += new System.EventHandler(this.btn_GuardarCambios_Click);
            // 
            // btn_EliminarRegistro
            // 
            this.btn_EliminarRegistro.Image = global::KATAJAVI_SIA.Properties.Resources.delete;
            this.btn_EliminarRegistro.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
            this.btn_EliminarRegistro.Location = new System.Drawing.Point(204, 374);
            this.btn_EliminarRegistro.Name = "btn_EliminarRegistro";
            this.btn_EliminarRegistro.Size = new System.Drawing.Size(116, 33);
            this.btn_EliminarRegistro.TabIndex = 48;
            this.btn_EliminarRegistro.Text = "Eliminar Registro";
            this.btn_EliminarRegistro.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
            this.btn_EliminarRegistro.UseVisualStyleBackColor = true;
            this.btn_EliminarRegistro.Click += new System.EventHandler(this.btn_EliminarRegistro_Click);
            // 
            // btn_NoHacerCambios
            // 
            this.btn_NoHacerCambios.Enabled = false;
            this.btn_NoHacerCambios.Image = global::KATAJAVI_SIA.Properties.Resources.editor_discard_change;
            this.btn_NoHacerCambios.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
            this.btn_NoHacerCambios.Location = new System.Drawing.Point(587, 374);
            this.btn_NoHacerCambios.Name = "btn_NoHacerCambios";
            this.btn_NoHacerCambios.Size = new System.Drawing.Size(124, 33);
            this.btn_NoHacerCambios.TabIndex = 49;
            this.btn_NoHacerCambios.Text = "Descatar Cambios";
            this.btn_NoHacerCambios.TextAlign = System.Drawing.ContentAlignment.MiddleRight;
            this.btn_NoHacerCambios.UseVisualStyleBackColor = true;
            this.btn_NoHacerCambios.Click += new System.EventHandler(this.btn_NoHacerCambios_Click);
            // 
            // label13
            // 
            this.label13.AutoSize = true;
            this.label13.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label13.Location = new System.Drawing.Point(460, 129);
            this.label13.Name = "label13";
            this.label13.Size = new System.Drawing.Size(66, 18);
            this.label13.TabIndex = 26;
            this.label13.Text = "Nombre :";
            // 
            // tbx_ClienteNombre1
            // 
            this.tbx_ClienteNombre1.BackColor = System.Drawing.Color.White;
            this.tbx_ClienteNombre1.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
            this.tbx_ClienteNombre1.Enabled = false;
            this.tbx_ClienteNombre1.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.tbx_ClienteNombre1.Location = new System.Drawing.Point(530, 126);
            this.tbx_ClienteNombre1.MaxLength = 15;
            this.tbx_ClienteNombre1.Name = "tbx_ClienteNombre1";
            this.tbx_ClienteNombre1.Size = new System.Drawing.Size(306, 26);
            this.tbx_ClienteNombre1.TabIndex = 25;
            this.tbx_ClienteNombre1.Leave += new System.EventHandler(this.tbx_ClienteNombre1_Leave);
            // 
            // tbx_ClienteRut
            // 
            this.tbx_ClienteRut.BackColor = System.Drawing.Color.WhiteSmoke;
            this.tbx_ClienteRut.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
            this.tbx_ClienteRut.Enabled = false;
            this.tbx_ClienteRut.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.tbx_ClienteRut.Location = new System.Drawing.Point(528, 89);
            this.tbx_ClienteRut.MaxLength = 15;
            this.tbx_ClienteRut.Name = "tbx_ClienteRut";
            this.tbx_ClienteRut.ReadOnly = true;
            this.tbx_ClienteRut.Size = new System.Drawing.Size(308, 26);
            this.tbx_ClienteRut.TabIndex = 50;
            // 
            // label2
            // 
            this.label2.AutoSize = true;
            this.label2.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
            this.label2.Location = new System.Drawing.Point(489, 97);
            this.label2.Name = "label2";
            this.label2.Size = new System.Drawing.Size(39, 18);
            this.label2.TabIndex = 51;
            this.label2.Text = "RUT :";
            // 
            // tbx_ClienteDireccion3
            // 
            this.tbx_ClienteDireccion3.BackColor = System.Drawing.Color.White;
            this.tbx_ClienteDireccion3.CharacterCasing = System.Windows.Forms.CharacterCasing.Upper;
            this.tbx_ClienteDireccion3.Enabled = false;
            this.tbx_ClienteDireccion3.Font = new System.Drawing.Font("Calibri", 11.25F, System.Drawing.FontStyle.Italic);
            this.tbx_ClienteDireccion3.Location = new System.Drawing.Point(530, 326);
            this.tbx_ClienteDireccion3.MaxLength = 15;
            this.tbx_ClienteDireccion3.Name = "tbx_ClienteDireccion3";
            this.tbx_ClienteDireccion3.Size = new System.Drawing.Size(306, 26);
            this.tbx_ClienteDireccion3.TabIndex = 38;
            this.tbx_ClienteDireccion3.Leave += new System.EventHandler(this.tbx_ClienteDireccion3_Leave);
            // 
            // errorProvider1
            // 
            this.errorProvider1.BlinkStyle = System.Windows.Forms.ErrorBlinkStyle.NeverBlink;
            this.errorProvider1.ContainerControl = this;
            // 
            // EditarClientes
            // 
            this.ClientSize = new System.Drawing.Size(880, 428);
            this.Controls.Add(this.tbx_ClienteDireccion3);
            this.Controls.Add(this.tbx_ClienteRut);
            this.Controls.Add(this.label2);
            this.Controls.Add(this.btn_NoHacerCambios);
            this.Controls.Add(this.btn_EliminarRegistro);
            this.Controls.Add(this.btn_CargarRegistro);
            this.Controls.Add(this.btn_GuardarCambios);
            this.Controls.Add(this.label12);
            this.Controls.Add(this.tbx_ClienteDireccion2);
            this.Controls.Add(this.tbx_ClienteNombre3);
            this.Controls.Add(this.tbx_ClienteNombre2);
            this.Controls.Add(this.label11);
            this.Controls.Add(this.label10);
            this.Controls.Add(this.label9);
            this.Controls.Add(this.label7);
            this.Controls.Add(this.label6);
            this.Controls.Add(this.tbx_ClienteDireccion1);
            this.Controls.Add(this.tbx_ClienteFonoNumero);
            this.Controls.Add(this.tbx_ClienteNombre1);
            this.Controls.Add(this.label5);
            this.Controls.Add(this.label4);
            this.Controls.Add(this.label13);
            this.Controls.Add(this.groupBox1);
            this.Controls.Add(this.dgv_ClientesLista);
            this.Controls.Add(this.label1);
            this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None;
            this.MinimizeBox = false;
            this.Name = "EditarClientes";
            this.Load += new System.EventHandler(this.EditarClientes_Load);
            this.groupBox1.ResumeLayout(false);
            this.groupBox1.PerformLayout();
            ((System.ComponentModel.ISupportInitialize)(this.dgv_ClientesLista)).EndInit();
            ((System.ComponentModel.ISupportInitialize)(this.errorProvider1)).EndInit();
            this.ResumeLayout(false);
            this.PerformLayout();

        }


        public void NoVacios()
        {
            if (dgv_ClientesLista.RowCount == 0)
            {
                btn_CargarRegistro.Enabled = false;
                btn_EliminarRegistro.Enabled = false;
                btn_BuscarCliente.Enabled = false;
                tbx_BusquedaDato.Enabled = false;
            }
        }

        private void Limpiar()
        {
            tbx_ClienteDireccion1.Clear();
            tbx_ClienteDireccion2.Clear();
            tbx_ClienteDireccion3.Clear();
            tbx_ClienteFonoNumero.Clear();
            tbx_ClienteNombre1.Clear();
            tbx_ClienteNombre2.Clear();
            tbx_ClienteNombre3.Clear();
            tbx_ClienteRut.Clear();
            tbx_BusquedaDato.Clear();
            tbx_ClienteDireccion1.Enabled = false;
            tbx_ClienteDireccion2.Enabled = false;
            tbx_ClienteDireccion3.Enabled = false;
            tbx_ClienteFonoNumero.Enabled = false;
            tbx_ClienteNombre1.Enabled = false;
            tbx_ClienteNombre2.Enabled = false;
            tbx_ClienteNombre3.Enabled = false;
            tbx_ClienteRut.Enabled = false;
            errorProvider1.Clear();
        }
        private void dgv_Clientes_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            
        }

        private void Llenar()
        {
            lista = BEDE.CLIENTE.Where(a => a.softdelete == 1);
            foreach (CLIENTE aux in lista)
            {
                dgv_ClientesLista.Rows.Add(aux.rut_cliente.ToString(), aux.nombre, aux.fono.ToString());
            }
            btn_CargarRegistro.Enabled = true;
            btn_EliminarRegistro.Enabled = true;
        }

        private void EditarClientes_Load(object sender, EventArgs e)
        {
            Llenar();
            NoVacios();
        }

        private void btn_EliminarRegistro_Click(object sender, EventArgs e)
        {
            lista = BEDE.CLIENTE;
            string rut = dgv_ClientesLista.CurrentRow.Cells[0].Value.ToString();
            int permiso = call.ValidarEliminacionCliente(rut);
            if (permiso == 0)
            {
                MessageBox.Show("El CLIENTE seleccionado no se ha podido eliminar, porque el sistema aun registra MOTOCICLETAS de su pertenencia, que estan siendo actualmente atendidas.", "ERROR AL INTENTAR ELIMINAR EL REGISTRO.", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            if (permiso == 1)
            {
                foreach( CLIENTE aux in lista)
                {
                    if (aux.rut_cliente == int.Parse(rut))
                    {
                        if (MessageBox.Show("El CLIENTE que desea eliminar tiene MOTOCICLETAS registradas de de su pertenencia, pero éstas no tienen atenciones relacionadas. Si elimina al CLIENTE seleccionado, se eliminaran también todas las MOTOCICLETAS asociadas a éste.\n\n¿Esta seguro que desea eliminar el CLIENTE indicado?", "ELIMINAR UN REGISTRO", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                        {
                            lista1 = BEDE.MOTO;
                            foreach (MOTO aux2 in lista1)
                            {
                                if (aux2.rut_cliente == aux.rut_cliente)
                                {
                                    aux2.softdelete = 0;// SE ELIMINAN TODAS LAS MOTOS ASOCIADAS AL CLIENTE
                                }
                            }
                            aux.softdelete = 0;
                            BEDE.SubmitChanges();
                            dgv_ClientesLista.Rows.Clear();
                            Llenar();
                            MessageBox.Show("El Cliente y sus motocicletas han sido eliminados correctamente del sistema.", "REGISTRO ELIMINADO.", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            NoVacios();
                        }
                    }
                }
            }
            if (permiso == 2)
            {
                foreach (CLIENTE aux in lista)
                {
                    if (aux.rut_cliente == int.Parse(rut))
                    {
                        if (MessageBox.Show("¿Esta seguro que desea eliminar el\nregistro seleccionado?.", "ELIMINAR UN REGISTRO", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                        {
                            aux.softdelete = 0;
                            BEDE.SubmitChanges();
                            dgv_ClientesLista.Rows.Clear();
                            Llenar();
                            MessageBox.Show("El Cliente ha sido eliminado correctamente del sistema.", "REGISTRO ELIMINADO.", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            NoVacios();
                        }
                    }
                }
                // se limpia el formulario completo para evitar confusiones, por si el registro que se eliminó, habia sido cargado al editor...
                Limpiar();
            }
        }

        private int FiltrarGrid(string buscado)
        {
            dgv_ClientesLista.Rows.Clear();
            lista = BEDE.CLIENTE.Where(a => a.softdelete == 1);
            int aa = 0;
            foreach (CLIENTE aux in lista)
            {
                if (aux.rut_cliente.ToString().Contains(buscado) | aux.nombre.Contains(buscado))
                {
                    dgv_ClientesLista.Rows.Add(aux.rut_cliente.ToString(), aux.nombre, aux.fono.ToString());
                    aa++;
                }
            }
            if (aa == 0) { return 0; }
            else { return 1; }
        }

        private void btn_BuscarCliente_Click(object sender, EventArgs e)
        {
            if (tbx_BusquedaDato.Text.Length >= 3)
            {
                tbx_BusquedaDato.Text = tbx_BusquedaDato.Text.Trim();
                int a = call.BuscarEnGrid(tbx_BusquedaDato.Text, dgv_ClientesLista);
                if (a == 0)
                {
                    int b = FiltrarGrid(tbx_BusquedaDato.Text.Trim());
                    if (b == 0)
                    {
                        MessageBox.Show("No se encontro ningun usuario asociado al dato indicado.", "RESULTADO DE LA BUSQUEDA", MessageBoxButtons.OK, MessageBoxIcon.Exclamation);
                        NoVacios();
                        tbx_BusquedaDato.Enabled = true;
                        btn_BuscarCliente.Enabled = true;
                    }
                }
            }
            else
            {
                if (tbx_BusquedaDato.Text == "") { errorProvider1.SetError(tbx_BusquedaDato, "Ingrese un dato para iniciar la búsqueda."); }
                else { errorProvider1.SetError(tbx_BusquedaDato, "El texto ingresado es muy corto para una búsqueda efectiva.\n(Se requieren mínimo 3 caracteres para la busqueda)."); }
            }
        }

        

        private void btn_CargarRegistro_Click(object sender, EventArgs e)
        {
            lista = BEDE.CLIENTE;
            string rut = dgv_ClientesLista.CurrentRow.Cells[0].Value.ToString();
            foreach (CLIENTE aux in lista)
            {
                if (aux.rut_cliente == int.Parse(rut))
                {
                    tbx_ClienteRut.Text = aux.rut_cliente.ToString();
                    tbx_ClienteFonoNumero.Text = aux.fono.ToString();
                    string[] PartesNom = aux.nombre.Split(' ');
                    int a = 1;
                    foreach (string nom in PartesNom)
                    {
                        if (a == 3) { if (nom.Contains('·')) { tbx_ClienteNombre3.Text = nom.Replace('·', ' '); } else { tbx_ClienteNombre3.Text = nom; }}
                        if (a == 2) { if (nom.Contains('·')) { tbx_ClienteNombre2.Text = nom.Replace('·', ' '); } else { tbx_ClienteNombre2.Text = nom; } a++; }
                        if (a == 1) { if (nom.Contains('·')) { tbx_ClienteNombre1.Text = nom.Replace('·', ' '); } else { tbx_ClienteNombre1.Text = nom; } a++; }
                    }

                    string[] PartesDir = aux.direccion.Split('#', ',');
                    int aa = 1;
                    foreach (string dir in PartesDir)
                    {
                        dir.Trim();
                        if (aa == 3) { tbx_ClienteDireccion3.Text = dir; }
                        if (aa == 2) { tbx_ClienteDireccion2.Text = dir; aa++; }
                        if (aa == 1) { tbx_ClienteDireccion1.Text = dir; aa++; }
                    }
                    tbx_ClienteDireccion1.Enabled = true;
                    tbx_ClienteDireccion2.Enabled = true;
                    tbx_ClienteDireccion3.Enabled = true;
                    tbx_ClienteFonoNumero.Enabled = true;
                    tbx_ClienteNombre1.Enabled = true;
                    tbx_ClienteNombre2.Enabled = true;
                    tbx_ClienteNombre3.Enabled = true;
                    tbx_ClienteRut.Enabled = true;
                    btn_NoHacerCambios.Enabled = true;
                    btn_GuardarCambios.Enabled = true;
                 }
            }    
        }

        private void btn_NoHacerCambios_Click(object sender, EventArgs e)
        {
            Limpiar();
            btn_NoHacerCambios.Enabled = false;
            btn_GuardarCambios.Enabled = false;
        }

        private void btn_GuardarCambios_Click(object sender, EventArgs e)
        {

            try
            {
                tbx_ClienteNombre1.Focus();
                tbx_ClienteNombre2.Focus();
                tbx_ClienteNombre3.Focus();
                tbx_ClienteFonoNumero.Focus();
                tbx_ClienteDireccion1.Focus();
                tbx_ClienteDireccion2.Focus();
                tbx_ClienteDireccion3.Focus();
                btn_GuardarCambios.Focus();
                int sw = valnombre1 * valnombre2 * valnombre3 * valdireccion1 * valdireccion2 * valdireccion3 * valfono;
                if (sw == 0)
                {
                    MessageBox.Show("Los datos ingresados son erroneos,\n por favor revise los campos señalados.\n", "ERROR EN LOS DATOS INGRESADOS.", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    if (MessageBox.Show("¿Esta seguro que desea guardar los cambios\nrealizados al registro?.", "EDITAR REGISTRO.", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)
                    {
                        CLIENTE ClienteExistente = (from c in BEDE.CLIENTE where c.rut_cliente == int.Parse(tbx_ClienteRut.Text) select c).First();
                        string nombre;
                        string apellidop;
                        string apellidom;
                        if (tbx_ClienteNombre1.Text.Contains(" ")) { nombre = tbx_ClienteNombre1.Text.Replace(' ', '·'); } else { nombre = tbx_ClienteNombre1.Text; }
                        if (tbx_ClienteNombre2.Text.Contains(" ")) { apellidop = tbx_ClienteNombre2.Text.Replace(' ', '·'); } else { apellidop = tbx_ClienteNombre2.Text; }
                        if (tbx_ClienteNombre3.Text.Contains(" ")) { apellidom = tbx_ClienteNombre3.Text.Replace(' ', '·'); } else { apellidom = tbx_ClienteNombre3.Text; }
                        string nombreaux = nombre + " " + apellidop + " " + apellidom;
                        int valdup = call.ComprobarDueño(tbx_ClienteRut.Text, nombreaux);
                        if (valdup == 2)
                        {
                            MessageBox.Show("El sistema ya registra un CLIENTE con el NOMBRE señalado. Por favor revise si el usuario que desea guardar ya ha sido registrado, o modifique el NOMBRE ingresado. ", "ERROR AL INTENTAR GUARDAR.", MessageBoxButtons.OK, MessageBoxIcon.Warning);
                        }
                        if (valdup != 2)
                        {
                            int fonoaux = int.Parse(tbx_ClienteFonoNumero.Text);
                            tbx_ClienteDireccion1.Text.Trim();
                            tbx_ClienteDireccion2.Text.Trim();
                            tbx_ClienteDireccion3.Text.Trim();
                            string direccionaux = tbx_ClienteDireccion1.Text + " #" + tbx_ClienteDireccion2.Text + ", " + tbx_ClienteDireccion3.Text;
                            ClienteExistente.nombre = nombreaux;
                            ClienteExistente.fono = fonoaux;
                            ClienteExistente.direccion = direccionaux;
                            BEDE.SubmitChanges();
                            Limpiar();
                            dgv_ClientesLista.Rows.Clear();
                            Llenar();
                            MessageBox.Show("Los cambios realizados en el registro\nse guardaron exitosamente.", "REGISTRO EDITADO.", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            btn_GuardarCambios.Enabled = false;
                            btn_NoHacerCambios.Enabled = false;
                        }
                    }
                }
            }
            catch { MessageBox.Show("Ha ocurrido un error al intentar guardar la inforación\n del cliente. Por favor, revise los datos e intentelo nuevamente.\n De Persistir el error, se recomienda reiniciar el programa.", "ERROR AL INTENTAR GUARDAR.", MessageBoxButtons.OK, MessageBoxIcon.Error); }
        }

        private void tbx_RutBuscar_TextChanged(object sender, EventArgs e)
        {
            if (tbx_BusquedaDato.Text.Length >= 3) { errorProvider1.Clear(); }
            if (tbx_BusquedaDato.Text == "")
            {
                dgv_ClientesLista.Rows.Clear();
                Llenar();
            }
        }

        private void tbx_ClienteFonoNumero_TextChanged(object sender, EventArgs e)
        {
            tbx_ClienteFonoNumero.Text = tbx_ClienteFonoNumero.Text.Trim();
        }

        private void tbx_ClienteDireccion2_TextChanged(object sender, EventArgs e)
        {
            tbx_ClienteNombre2.Text = tbx_ClienteNombre2.Text.Trim();
        }

        private void tbx_ClienteNombre1_Leave(object sender, EventArgs e)
        {
            tbx_ClienteNombre1.Text = tbx_ClienteNombre1.Text.Trim();
            valnombre1 = call.ValidarTextos(tbx_ClienteNombre1.Text);
            if (valnombre1 == 0) { errorProvider1.SetError(tbx_ClienteNombre1, "* Este campo solo puede contener caracteres entre A y Z, ademas de Espacios.\n* Este campo no puede quedar vacío."); }
            else { errorProvider1.SetError(tbx_ClienteNombre1, ""); }
        }

        private void tbx_ClienteNombre2_Leave(object sender, EventArgs e)
        {
            tbx_ClienteNombre2.Text = tbx_ClienteNombre2.Text.Trim();
            valnombre2 = call.ValidarTextos(tbx_ClienteNombre2.Text);
            if (valnombre2 == 0) { errorProvider1.SetError(tbx_ClienteNombre2, "* Este campo solo puede contener caracteres entre A y Z, ademas de Espacios.\n* Este campo no puede quedar vacío."); }
            else { errorProvider1.SetError(tbx_ClienteNombre2, ""); }
        }

        private void tbx_ClienteNombre3_Leave(object sender, EventArgs e)
        {
            tbx_ClienteNombre3.Text = tbx_ClienteNombre3.Text.Trim();
            valnombre3 = call.ValidarTextos(tbx_ClienteNombre3.Text);
            if (valnombre3 == 0) { errorProvider1.SetError(tbx_ClienteNombre3, "* Este campo solo puede contener caracteres entre A y Z, ademas de Espacios.\n* Este campo no puede quedar vacío."); }
            else { errorProvider1.SetError(tbx_ClienteNombre3, ""); }
        }

        private void tbx_ClienteFonoNumero_Leave(object sender, EventArgs e)
        {
            valfono = call.ValidarFono(tbx_ClienteFonoNumero.Text);
            if (valfono == 0) { errorProvider1.SetError(tbx_ClienteFonoNumero, "* Este campo solo puede contener números.\n* Este campo no puede contener menos de 8 digitos.\n* Para Celulares, anteponga 9, 8 o 7 segun corresponda.\n* Para teléfono fijo, anteponga 2.\n* Este campo no puede quedar vacío."); }
            else { errorProvider1.SetError(tbx_ClienteFonoNumero, ""); }
        }

        private void tbx_ClienteDireccion1_Leave(object sender, EventArgs e)
        {
            tbx_ClienteDireccion1.Text = tbx_ClienteDireccion1.Text.Trim();
            valdireccion1 = call.ValidarTextos(tbx_ClienteDireccion1.Text);
            if (valdireccion1 == 0) { errorProvider1.SetError(tbx_ClienteDireccion1, "* Este campo solo puede contener caracteres entre A y Z, ademas de Espacios.\n* Este campo no puede quedar vacío."); }
            else { errorProvider1.SetError(tbx_ClienteDireccion1, ""); }
        }

        private void tbx_ClienteDireccion2_Leave(object sender, EventArgs e)
        {
            valdireccion2 = call.ValidarNumeros(tbx_ClienteDireccion2.Text);
            if (valdireccion2 == 0) { errorProvider1.SetError(tbx_ClienteDireccion2, "* Este campo solo puede contener números.\n* Este campo no puede quedar vacío."); }
            else { errorProvider1.SetError(tbx_ClienteDireccion2, ""); }
        }

        private void tbx_ClienteDireccion3_Leave(object sender, EventArgs e)
        {
            tbx_ClienteDireccion3.Text = tbx_ClienteDireccion3.Text.Trim();
            valdireccion3 = call.ValidarTextos(tbx_ClienteDireccion3.Text);
            if (valdireccion3 == 0) { errorProvider1.SetError(tbx_ClienteDireccion3, "* Este campo solo puede contener caracteres entre A y Z, ademas de Espacios.\n* Este campo no puede quedar vacío."); }
            else { errorProvider1.SetError(tbx_ClienteDireccion3, ""); }
        }
    }
}
